In recent years, a robot of human coexistent type has been vigorously researched (e.g., refer to the non-patent documents 1 and 2). In the near future, a robot will go into the town and work to help the man in a scene. Also, those robots will perform exactly different works.
Herein, a biped robot developed recently operates in accordance with a control algorithm called a ZMP method (Zoro Momentum Point method).
FIG. 1 is a principle view for explaining the ZMP method.
When the robot is stationary, the upper part of body is raised to have the center of gravity of the robot directly above the sole of foot to keep the attitude standing.
On the contrary, when the robot attempts to advance, the robot falls backward in a state where the center of gravity is directly above the sole of foot.
This is because the ZMP (dynamic center of gravity) is situated backward. To prevent the robot from falling down, when advancing, the upper part of body is inclined forward and accelerated, causing a restoring force to be exerted, and in view of a reaction force from the floor and the center of gravity of the robot, the upper part of body is adjusted at a degree of inclination to locate the ZMP at the target point. In this way, the biped robot can move forward by controlling the ZPM (dynamic center of gravity) to be always at the target point.
A control algorithm based on this MZP method needs very complex mechanical, mathematical arithmetic operations, and takes a lot of cost and time for development. Also, employing the ZMP method, the robot walks in a completed manner of a so-called Noh player, and has a way of walking to make an impression slightly different from “humanoid”.
Also, most of the robots, not limited to the biped robot employing the ZMP method, at present, have software performing a specific operation and written in a procedural language. Therefore, it is required to replace this software to perform an exactly different operation. In effect, it is required to restructure the control algorithm. If the algorithm necessary for work is made for each work, a number of pieces of software are needed, greatly increasing the cost. One method is to develop the middleware to reduce the cost, and another method is to cause the robot or the robot controller to learn by itself and memorize each work.
As a typical example of this self-learning system, a neural network is well known.
FIG. 2 is a diagram showing a Layered Neural Network (LNN) model.
Herein, a neuron is arranged on each of an input layer, an intermediate layer and an output layer. All the inputs into the LNN are accepted by the neurons on the input layer, the output from each neuron on the input layer is passed to each neuron on the intermediate layer, the output from each neuron on the intermediate layer is passed to the neuron on the output layer, and the output from the neuron on the output layer is outputted from the LNN.
FIG. 3 is a diagram showing a model of each neuron making up the LNN as shown in FIG. 2. FIG. 4 is a diagram showing a sigmoid function defining the relationship between the input and output of the neuron. As shown in FIG. 3, when there are plural inputs X1, X2, X3, . . . , Xi from the former stage, this neuron accepts
                    X        =                              ∑            i                    ⁢                                    X              i                        ⁢                          W              i                                                          (        1        )            as a total input, where each coupling strength is W1, W2, W3, . . . , Wi, and in this neuron, the output Y=f(X) is produced in accordance with the sigmoid function of FIG. 4,
                              f          ⁡                      (            X            )                          =                  1                      1            +                          exp              ⁡                              (                                  -                  X                                )                                                                        (        2        )            
Regarding this LNN, it is required that the value of each coefficient called the coupling strength W1, W2, W3, . . . , Wi is determined. As a method for determining those coefficients, a BP (Back Propagation) method is well known, in which various learning methods such as learning with teacher and learning without teacher are provided.
This LNN basically processes the input through the filter to provide the output. Though the coefficients (coupling coefficients W1, W2, W3, . . . , Wi) of the filter are appropriately determined by the BP method, the LNN can not produce the output corresponding to a periodic motion or aperiodic motion, and is essentially inappropriate for controlling the operation of the robot.
As another model of the neural network, a Recurrent Neural Network (RNN) is well known.
FIG. 5 is a diagram showing a RNN model.
Though in the LNN of FIG. 2 the signal orderly flows from the input side to the output side, in the RNN of FIG. 5 the signal is passed from the neuron on the input side to the neuron on the output side, and vice versa, whereby there is a loop of signal flow.
This RNN is vigorously researched, but no decisive method has been yet found as the combinatorial method of neurons (determining the signal propagation route) or learning method (determining the coefficient values).
(Non-Patent Document 1)
Jiang Shan, Fumio Nagashima: Biologically Inspired Spinal Locomotion Controller for Humanoid Robot, The 19-th Japan Robot institute science lecture meeting, p. 517–518 (2001)
(Non-Patent Document 2)
Taga G., Miyake Y., Yamaguchi Y., Shimizu H.: Generation and Coordination of Bipedal Locomotion through Global Entrainment (1991)